//
//  WCExtractSetArray.h
//  WebClipper
//
//  Created by Daniel Braun on 07/04/07.
//  Copyright 2007 Daniel Braun http://page-appart.net, http://braun.daniel.free.fr All rights reserved.
//

#import <Cocoa/Cocoa.h>
@class DBParser;
@class DBLexer;
@class WCWebExtractSet;

@interface WCExtractSetArray : NSObject {
	NSMutableArray *_a;
#ifdef DOXYGEN
	WCWebExtractSet *___a;
#endif
	NSMutableArray *_otherVariables;
#ifdef DOXYGEN
	DictionaryWrapper *___otherVariables;
#endif
	DBParser *parser;
	DBLexer *lexer;
}
- (void) update;
- (id) initWithArray:(NSArray *)a;
+ (id) extractSetArrayFromSaveDictionnary:(NSDictionary *)d;

- (WCWebExtractSet *) esetForPage:(NSString *)page;
- (NSDictionary *) otherVariables;
- (NSDictionary *) parsedUserVariablesWithDictionary:(NSDictionary *)d;


- (NSMutableArray *) arrayVariables;
- (void) setArrayVariables:(NSMutableArray *)a;
- (NSDictionary *) extractVariableDictionary;

/* array containing variables name */
- (NSArray *) extractVariables;
- (NSMutableArray *) userVariables;
- (id) userVariableValue:(NSString *)name withDictionary:(NSDictionary *)vars;
- (NSMutableArray *) allVariables;
- (void)  changeUserVariable:(NSString *)name toValue:(id)v;
- (void) setupParser;

@end

@interface WCExtractSetArray (NSArrayForwardedMethods)
- (NSUInteger) count;
- (id) objectAtIndex:(NSUInteger) ix;
- (void) addObject:(id)k;
- (NSEnumerator *)objectEnumerator;

@end
